{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "d6b025b7",
   "metadata": {},
   "source": [
    "# 习题\n",
    "\n",
    "## 习题6.1：确认逻辑斯谛分布属于指数分布族。\n",
    "<a href=\"https://datawhalechina.github.io/statistical-learning-method-solutions-manual/#/chapter06/ch06?id=%e4%b9%a0%e9%a2%9861\">答案详见</a>\n",
    "## 习题6.2：写出逻辑斯谛回归模型学习的梯度下降算法。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "27660a76",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "迭代次数：2095次\n",
      "梯度：[ 7.33881397e-05  2.44073067e-05  2.52604176e-04 -5.13424350e-04]\n",
      "权重：[  4.34496173   2.05340452   9.64074166 -22.85079478]\n",
      "模型准确率：100.00%\n"
     ]
    }
   ],
   "source": [
    "from scipy.optimize import fminbound\n",
    "# pylab 是 matplotlib 库中的一个模块，它将 matplotlib.pyplot 和 NumPy 的一些功能整合在一起，旨在提供一个类似于 MATLAB 的接口，使得绘图和数据处理更加便捷。尽管如此，现代的 matplotlib 使用中，推荐直接使用 matplotlib.pyplot 和 NumPy，而不是 pylab，因为这样更为清晰和规范。\n",
    "# 下面是 pylab 的一些主要功能：\n",
    "# 简化绘图：pylab 提供了与 MATLAB 类似的命令样式函数，使绘图更加方便。\n",
    "# 整合数值计算和绘图：通过整合 NumPy，pylab 提供了强大的数值计算功能，并能轻松地将数据进行可视化。\n",
    "from pylab import mpl\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "# 图像显示中文\n",
    "mpl.rcParams['font.sans-serif'] = ['SimHei']\n",
    "\n",
    "\n",
    "class MyLogisticRegression:\n",
    "    def __init__(self, max_iter=10000, distance=3, epsilon=1e-6):\n",
    "        \"\"\"\n",
    "        逻辑斯谛回归\n",
    "        :param max_iter: 最大迭代次数 \n",
    "        :param distance: 一维搜索的长度范围\n",
    "        :param epsilon: 迭代停止阈值\n",
    "        \"\"\"\n",
    "        self.max_iter = max_iter\n",
    "        self.epsilon = epsilon\n",
    "        # 权重\n",
    "        self.w = None\n",
    "        self.distance = distance\n",
    "        self._X = None\n",
    "        self._y = None\n",
    "\n",
    "    @staticmethod\n",
    "    def preprocessing(X):\n",
    "        \"\"\"将原始X末尾加上一列，该列数值全部为1\"\"\"\n",
    "        row = X.shape[0]\n",
    "        y = np.ones(row).reshape(row, 1)\n",
    "        return np.hstack((X, y))\n",
    "\n",
    "    @staticmethod\n",
    "    def sigmod(x):\n",
    "        return 1 / (1 + np.exp(-x))\n",
    "\n",
    "    def grad(self, w):\n",
    "        z = np.dot(self._X, w.T)\n",
    "        grad = self._X * (self._y - self.sigmod(z))\n",
    "        grad = grad.sum(axis=0)\n",
    "        return grad\n",
    "\n",
    "    def like_func(self, w):\n",
    "        z = np.dot(self._X, w.T)\n",
    "        f = self._y * z - np.log(1 + np.exp(z))\n",
    "        return np.sum(f)\n",
    "\n",
    "    def fit(self, data_x, data_y):\n",
    "        self._X = self.preprocessing(data_x)\n",
    "        self._y = data_y.T\n",
    "        # （1）取初始化w\n",
    "        w = np.array([[0] * self._X.shape[1]], dtype=np.float64)\n",
    "        k = 0\n",
    "        # （2）计算f(w)\n",
    "        fw = self.like_func(w)\n",
    "        for _ in range(self.max_iter):\n",
    "            # 计算梯度g(w)\n",
    "            grad = self.grad(w)\n",
    "            # （3）当梯度g(w)的模长小于精度时，停止迭代\n",
    "            # 计算L2范数，且保持原数组的维度\n",
    "            if (np.linalg.norm(grad, axis=0, keepdims=True) < self.epsilon).all():\n",
    "                self.w = w\n",
    "                break\n",
    "\n",
    "            # 梯度方向的一维函数\n",
    "            def f(x):\n",
    "                z = w - np.dot(x, grad)\n",
    "                return -self.like_func(z)\n",
    "\n",
    "            # （3）进行一维搜索，找到使得函数最大的lambda\n",
    "            # 用于在给定区间内寻找单变量函数最小值的优化函数。它基于黄金分割搜索算法和抛物线插值法，适用于寻找函数在区间 [a, b] 内的局部最小值。\n",
    "            _lambda = fminbound(f, -self.distance, self.distance)\n",
    "\n",
    "            # （4）设置w(k+1)\n",
    "            w1 = w - np.dot(_lambda, grad)\n",
    "            fw1 = self.like_func(w1)\n",
    "\n",
    "            # （4）当f(w(k+1))-f(w(k))的二范数小于精度，或w(k+1)-w(k)的二范数小于精度\n",
    "            if np.linalg.norm(fw1 - fw) < self.epsilon or \\\n",
    "                    (np.linalg.norm((w1 - w), axis=0, keepdims=True) < self.epsilon).all():\n",
    "                self.w = w1\n",
    "                break\n",
    "\n",
    "            # （5） 设置k=k+1\n",
    "            k += 1\n",
    "            w, fw = w1, fw1\n",
    "\n",
    "        self.grad_ = grad\n",
    "        self.n_iter_ = k\n",
    "        self.coef_ = self.w[0][:-1]\n",
    "        self.intercept_ = self.w[0][-1]\n",
    "\n",
    "    def predict(self, x):\n",
    "        p = self.sigmod(np.dot(self.preprocessing(x), self.w.T))\n",
    "        p[np.where(p > 0.5)] = 1\n",
    "        p[np.where(p < 0.5)] = 0\n",
    "        return p\n",
    "\n",
    "    def score(self, X, y):\n",
    "        y_c = self.predict(X)\n",
    "        # 计算准确率\n",
    "        error_rate = np.sum(np.abs(y_c - y.T)) / y_c.shape[0]\n",
    "        return 1 - error_rate\n",
    "\n",
    "    def draw(self, X, y):\n",
    "        # 分隔正负实例点\n",
    "        y = y[0]\n",
    "        X_po = X[np.where(y == 1)]\n",
    "        X_ne = X[np.where(y == 0)]\n",
    "        # 绘制数据集散点图\n",
    "        ax = plt.axes(projection='3d')\n",
    "        x_1 = X_po[0, :]\n",
    "        y_1 = X_po[1, :]\n",
    "        z_1 = X_po[2, :]\n",
    "        x_2 = X_ne[0, :]\n",
    "        y_2 = X_ne[1, :]\n",
    "        z_2 = X_ne[2, :]\n",
    "        ax.scatter(x_1, y_1, z_1, c=\"r\", label=\"正实例\")\n",
    "        ax.scatter(x_2, y_2, z_2, c=\"b\", label=\"负实例\")\n",
    "        ax.legend(loc='best')\n",
    "        # 绘制透明度为0.5的分隔超平面\n",
    "        x = np.linspace(-3, 3, 3)\n",
    "        y = np.linspace(-3, 3, 3)\n",
    "        x_3, y_3 = np.meshgrid(x, y)\n",
    "        a, b, c, d = self.w[0]\n",
    "        z_3 = -(a * x_3 + b * y_3 + d) / c\n",
    "        # 调节透明度\n",
    "        ax.plot_surface(x_3, y_3, z_3, alpha=0.5)\n",
    "        plt.show()\n",
    "\n",
    "# 训练数据集\n",
    "X_train = np.array([[3, 3, 3], [4, 3, 2], [2, 1, 2], [1, 1, 1], [-1, 0, 1], [2, -2, 1]])\n",
    "y_train = np.array([[1, 1, 1, 0, 0, 0]])\n",
    "# 构建实例，进行训练\n",
    "clf = MyLogisticRegression(epsilon=1e-6)\n",
    "clf.fit(X_train, y_train)\n",
    "clf.draw(X_train, y_train)\n",
    "print(\"迭代次数：{}次\".format(clf.n_iter_))\n",
    "print(\"梯度：{}\".format(clf.grad_))\n",
    "print(\"权重：{}\".format(clf.w[0]))\n",
    "print(\"模型准确率：%0.2f%%\" % (clf.score(X_train, y_train) * 100))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "24e0e101",
   "metadata": {},
   "source": [
    "## 习题6.3：写出最大熵模型学习的DFP算法。（关于一般的DFP算法参见附录B）"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "de34e29d",
   "metadata": {},
   "outputs": [],
   "source": [
    "import copy\n",
    "from collections import defaultdict\n",
    "\n",
    "import numpy as np\n",
    "from scipy.optimize import fminbound\n",
    "\n",
    "\n",
    "class MaxEntDFP:\n",
    "    def __init__(self, epsilon, max_iter=1000, distance=0.01):\n",
    "        \"\"\"\n",
    "        最大熵的DFP算法\n",
    "        :param epsilon: 迭代停止阈值\n",
    "        :param max_iter: 最大迭代次数\n",
    "        :param distance: 一维搜索的长度范围\n",
    "        \"\"\"\n",
    "        self.distance = distance\n",
    "        self.epsilon = epsilon\n",
    "        self.max_iter = max_iter\n",
    "        self.w = None\n",
    "        self._dataset_X = None\n",
    "        self._dataset_y = None\n",
    "        # 标签集合，相当去去重后的y\n",
    "        self._y = set()\n",
    "        # key为(x,y), value为对应的索引号ID\n",
    "        self._xyID = {}\n",
    "        # key为对应的索引号ID, value为(x,y)\n",
    "        self._IDxy = {}\n",
    "        # 经验分布p(x,y)\n",
    "        self._pxy_dic = defaultdict(int)\n",
    "        # 样本数\n",
    "        self._N = 0\n",
    "        # 特征键值(x,y)的个数\n",
    "        self._n = 0\n",
    "        # 实际迭代次数\n",
    "        self.n_iter_ = 0\n",
    "\n",
    "    # 初始化参数\n",
    "    def init_params(self, X, y):\n",
    "        self._dataset_X = copy.deepcopy(X)\n",
    "        self._dataset_y = copy.deepcopy(y)\n",
    "        self._N = X.shape[0]\n",
    "\n",
    "        for i in range(self._N):\n",
    "            xi, yi = X[i], y[i]\n",
    "            self._y.add(yi)\n",
    "            for _x in xi:\n",
    "                self._pxy_dic[(_x, yi)] += 1\n",
    "\n",
    "        self._n = len(self._pxy_dic)\n",
    "        # 初始化权重w\n",
    "        self.w = np.zeros(self._n)\n",
    "\n",
    "        for i, xy in enumerate(self._pxy_dic):\n",
    "            self._pxy_dic[xy] /= self._N\n",
    "            self._xyID[xy] = i\n",
    "            self._IDxy[i] = xy\n",
    "\n",
    "    # 计算规范化因子\n",
    "    def calc_zw(self, X, w):\n",
    "        \"\"\"书中第100页公式6.23，计算Zw(x)\"\"\"\n",
    "        zw = 0.0\n",
    "        for y in self._y:\n",
    "            zw += self.calc_ewf(X, y, w)\n",
    "        return zw\n",
    "\n",
    "    def calc_ewf(self, X, y, w):\n",
    "        \"\"\"书中第100页公式6.22，计算分子\"\"\"\n",
    "        sum_wf = self.calc_wf(X, y, w)\n",
    "        return np.exp(sum_wf)\n",
    "\n",
    "    def calc_wf(self, X, y, w):\n",
    "        sum_wf = 0.0\n",
    "        for x in X:\n",
    "            if (x, y) in self._pxy_dic:\n",
    "                sum_wf += w[self._xyID[(x, y)]]\n",
    "        return sum_wf\n",
    "\n",
    "    def calc_pw_yx(self, X, y, w):\n",
    "        \"\"\"计算Pw(y|x)\"\"\"\n",
    "        return self.calc_ewf(X, y, w) / self.calc_zw(X, w)\n",
    "\n",
    "    def calc_f(self, w):\n",
    "        \"\"\"计算f(w)\"\"\"\n",
    "        fw = 0.0\n",
    "        for i in range(self._n):\n",
    "            x, y = self._IDxy[i]\n",
    "            for dataset_X in self._dataset_X:\n",
    "                if x not in dataset_X:\n",
    "                    continue\n",
    "                fw += np.log(self.calc_zw(x, w)) - \\\n",
    "                    self._pxy_dic[(x, y)] * self.calc_wf(dataset_X, y, w)\n",
    "\n",
    "        return fw\n",
    "\n",
    "    # DFP算法\n",
    "    def fit(self, X, y):\n",
    "        self.init_params(X, y)\n",
    "\n",
    "        def calc_dfw(i, w):\n",
    "            \"\"\"计算书中第107页的拟牛顿法f(w)的偏导\"\"\"\n",
    "\n",
    "            def calc_ewp(i, w):\n",
    "                \"\"\"计算偏导左边的公式\"\"\"\n",
    "                ep = 0.0\n",
    "                x, y = self._IDxy[i]\n",
    "                for dataset_X in self._dataset_X:\n",
    "                    if x not in dataset_X:\n",
    "                        continue\n",
    "                    ep += self.calc_pw_yx(dataset_X, y, w) / self._N\n",
    "                return ep\n",
    "\n",
    "            def calc_ep(i):\n",
    "                \"\"\"计算关于经验分布P(x,y)的期望值\"\"\"\n",
    "                (x, y) = self._IDxy[i]\n",
    "                return self._pxy_dic[(x, y)]\n",
    "\n",
    "            return calc_ewp(i, w) - calc_ep(i)\n",
    "\n",
    "        # 算出g(w)，是n*1维矩阵\n",
    "        def calc_gw(w):\n",
    "            return np.array([[calc_dfw(i, w) for i in range(self._n)]]).T\n",
    "\n",
    "        # （1）初始正定对称矩阵，单位矩阵\n",
    "        Gk = np.array(np.eye(len(self.w), dtype=float))\n",
    "\n",
    "        # （2）计算g(w0)\n",
    "        w = self.w\n",
    "        gk = calc_gw(w)\n",
    "        # 判断gk的范数是否小于阈值\n",
    "        if np.linalg.norm(gk, ord=2) < self.epsilon:\n",
    "            self.w = w\n",
    "            return\n",
    "\n",
    "        k = 0\n",
    "        for _ in range(self.max_iter):\n",
    "            # （3）计算pk\n",
    "            pk = -Gk.dot(gk)\n",
    "\n",
    "            # 梯度方向的一维函数\n",
    "            def _f(x):\n",
    "                z = w + np.dot(x, pk).T[0]\n",
    "                return self.calc_f(z)\n",
    "\n",
    "            # （4）进行一维搜索，找到使得函数最小的lambda\n",
    "            _lambda = fminbound(_f, -self.distance, self.distance)\n",
    "\n",
    "            delta_k = _lambda * pk\n",
    "            # （5）更新权重\n",
    "            w += delta_k.T[0]\n",
    "\n",
    "            # （6）计算gk+1\n",
    "            gk1 = calc_gw(w)\n",
    "            # 判断gk1的范数是否小于阈值\n",
    "            if np.linalg.norm(gk1, ord=2) < self.epsilon:\n",
    "                self.w = w\n",
    "                break\n",
    "            # 根据DFP算法的迭代公式（附录B.24公式）计算Gk\n",
    "            yk = gk1 - gk\n",
    "            Pk = delta_k.dot(delta_k.T) / (delta_k.T.dot(yk))\n",
    "            Qk = Gk.dot(yk).dot(yk.T).dot(Gk) / (yk.T.dot(Gk).dot(yk)) * (-1)\n",
    "            Gk = Gk + Pk + Qk\n",
    "            gk = gk1\n",
    "\n",
    "            # （7）置k=k+1\n",
    "            k += 1\n",
    "\n",
    "        self.w = w\n",
    "        self.n_iter_ = k\n",
    "\n",
    "    def predict(self, x):\n",
    "        result = {}\n",
    "        for y in self._y:\n",
    "            prob = self.calc_pw_yx(x, y, self.w)\n",
    "            result[y] = prob\n",
    "\n",
    "        return result\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "4ab58792",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "模型训练迭代次数：878次\n",
      "模型权重：[ 11.72083082  -0.7189626    9.69699232  -8.83693899   5.57382082\n",
      "  19.50768089   0.7189626   -9.69699232   8.83693899  -4.5237319\n",
      "   9.15646808  -6.6123125   12.96011049   4.5237319    6.6123125\n",
      " -12.96011049  -5.57382082  -9.15646808 -11.72083082]\n",
      "预测结果： {'no': 2.0977201733632289e-16, 'yes': 0.9999999999999998}\n"
     ]
    }
   ],
   "source": [
    "# 训练数据集\n",
    "dataset = np.array([['no', 'sunny', 'hot', 'high', 'FALSE'],\n",
    "                    ['no', 'sunny', 'hot', 'high', 'TRUE'],\n",
    "                    ['yes', 'overcast', 'hot', 'high', 'FALSE'],\n",
    "                    ['yes', 'rainy', 'mild', 'high', 'FALSE'],\n",
    "                    ['yes', 'rainy', 'cool', 'normal', 'FALSE'],\n",
    "                    ['no', 'rainy', 'cool', 'normal', 'TRUE'],\n",
    "                    ['yes', 'overcast', 'cool', 'normal', 'TRUE'],\n",
    "                    ['no', 'sunny', 'mild', 'high', 'FALSE'],\n",
    "                    ['yes', 'sunny', 'cool', 'normal', 'FALSE'],\n",
    "                    ['yes', 'rainy', 'mild', 'normal', 'FALSE'],\n",
    "                    ['yes', 'sunny', 'mild', 'normal', 'TRUE'],\n",
    "                    ['yes', 'overcast', 'mild', 'high', 'TRUE'],\n",
    "                    ['yes', 'overcast', 'hot', 'normal', 'FALSE'],\n",
    "                    ['no', 'rainy', 'mild', 'high', 'TRUE']])\n",
    "\n",
    "X_train = dataset[:, 1:]\n",
    "y_train = dataset[:, 0]\n",
    "\n",
    "mae = MaxEntDFP(epsilon=1e-4, max_iter=1000, distance=0.01)\n",
    "# 训练模型\n",
    "mae.fit(X_train, y_train)\n",
    "print(\"模型训练迭代次数：{}次\".format(mae.n_iter_))\n",
    "print(\"模型权重：{}\".format(mae.w))\n",
    "\n",
    "result = mae.predict(['overcast', 'mild', 'high', 'FALSE'])\n",
    "print(\"预测结果：\", result)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "32f29a1e",
   "metadata": {},
   "source": [
    "# 使用逻辑斯谛回归学习iris数据集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "b0e9abd9",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "LogisticRegression Model(learning_rate=0.01,max_iter=200)\n",
      "The score used logisticClassifier to predict is 100.00%\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x3113fbc50>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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IDKrkq0q6EoLUyIiIhKIzKpkqwq60sKUiIiIBKLTlWzPKh53mg0SOvm+kq1Z/YplKREREQlEZlWyVQVdaWFKREREApVZlWxVQVdakGWX74qIBA3trCpBSEXvRERChT0MMgdbp1+xFD2aEREREdMoERERERHTKBERERER0ygREREREdMoERERERHTKBERERER0ygREREREdMoERERERHTKBERERER0ygREREREdMoERERERHTKBERERER0ygREREREdMoERERERHTKBERERER0ygREREREdOEmx2ASMhwOmDPWjhxEOI6QvogsIeZHZWISEDz+I5Ifn4+Q4cOJT4+nmHDhrFnz55zHrN06VJ69uxJq1atuOGGG6isrGxWsCIBK/cDmNsHXs+Bf97u+t+5fVzvi4hIozxORH7729/SpUsXtm7dStu2bZk4cWKT7UtLS7n++uuZPHky33zzDYWFhcyaNavZAYsEnNwP4L1bofzAme+XF7veVzIiItIojxKRmpoaPvnkE6ZOnUp6ejq33347q1evbvKY999/n86dO3PXXXeRkZHBgw8+yFtvveVV0CIBw+mAJQ8BRgN/+O17S/7gaiciImfxKBGpra3lqaeeIjMzE4CjR48SExPT5DFr1qxh0KBB9a8HDBhAUVERe/fubbB9dXU15eXlZ/yIBKw9a8++E3IGA8r3u9qJiMhZPEpEWrVqxZQpU4iJiaG2tpbnn3+eW265pcljSkpKaNeuXf3rtm3bAnDw4MEG28+ePZvExMT6n7S0NE9CFGlZJxq+jpvdTkTEYpq1fLeuro6bb74Zu93Oo48+es72hmGc9f9tNluDbadOnUpZWVn9T2N3TkQCQlxH37YTEbEYj5fvOp1ObrjhBvLz8/n444/P+WgmJSWFw4cP178+evQoAMnJyQ22j4qKIioqytOwRMyRPggSUl0TUxucJ2Jz/Xn6oAb+TEREPL4j8uijj7Jr1y4++eQT2rRpc872gwcPZu3a756Pr1+/noyMDDp16uRp1yKBxx4Go5/89sUP7/J9+3r0E9pPRESkER4lIiUlJTz77LPMnz8fcC3NLS0txel0Ul5eTm1t7VnH/OhHP6K4uJj58+dTWFjInDlzGD9+vG+iFwkE2ePg+jcgIeXM9xNSXe9njzMnLhGRIGAzvj+B4xxef/11brvttrPeLygoYNiwYcydO5frrrvurD9ftmwZEydOZP/+/YwbN45XX32V2NhYt/osLy8nMTGRsrIyEhIS3A1VpOVpZ1URkXrufn97lIiYQYmIiIhI8HH3+1tF70RERMQ0SkRERETENEpERERExDRKRERERMQ0SkRERETENEpERERExDRKRERERMQ0SkRERETENEpERERExDQeV99taac3fi0vLzc5EhEREXHX6e/tc23gHvCJSEVFBQBpaWkmRyIiIiKeqqioIDExsdE/D/haM06nkwMHDhAfH4/N9sMy681XXl5OWloae/fuVQ2bc9BYuU9j5RmNl/s0Vu7TWLnPn2NlGAYVFRWkpqZitzc+EyTg74jY7XY6d+7st9+fkJCgC9VNGiv3aaw8o/Fyn8bKfRor9/lrrJq6E3KaJquKiIiIaZSIiIiIiGksm4hERUUxY8YMoqKizA4l4Gms3Kex8ozGy30aK/dprNwXCGMV8JNVRUREJHRZ9o6IiIiImE+JiIiIiJhGiYiIiIiYRomIiIiImCbkE5FVq1Zhs9lYuXLlOdsuXbqUnj170qpVK2644QYqKyv9H2AA8WSskpOTsdls9T+XXHKJ/wMMEJdddtkZ596uXbtzHmPVa6s5Y2XVa6u2tpY777yT+Ph4srOz2bBhwzmPsep11ZyxsuJ1VVhYeMY5n/45l5a+rkI6EamtreXuu+92q21paSnXX389kydP5ptvvqGwsJBZs2b5OcLA4clYgWu88vLyOH78OMePH3creQkVpaWlLF26tP7c8/Pzz9neqteWp2N1+hgrXltPP/00hYWFbNq0iRtuuIHx48c32d7K15WnYwXWvK66dOlSf77Hjx/njTfeIDk5ucljTLmujBD25JNPGldeeaWRmJhorFixosm2r776qpGdnV3/+p///KfRpUsXP0cYODwZq6qqKgMwqqurWya4AJOcnGzs2LHD7fZWvrY8HSsrX1vdunUzNm/ebBiGYVRUVBh///vfDYfD0Wh7K19Xno6Vla+r7/vNb35j3HbbbU22MeO6Ctk7Ivv27eOJJ55g3rx5brVfs2YNgwYNqn89YMAAioqK2Lt3r79CDBiejlVpaSnR0dHceOONxMTEMGTIEPbv3+/nKANHaWkpf/zjH4mJieGiiy7im2++abK9la8tT8fKqtdWSUkJ+fn5fPrppyQmJjJ06FAuvPDCJguFWfW6as5YWfW6+qHFixczZsyYJtuYcV2FbCIyadIk7rzzTrKystxqX1JScsbz67Zt2wJw8OBBv8QXSDwdq9LSUqqqqhgxYgS5ubnY7XamTJni5ygDQ01NDVVVVXTv3p3c3Fyys7P5zW9+0+QxVr22mjNWVr22iouLsdvtfP7553z99ddkZWVx1113NXmMVa+r5oyVVa+r79u8eTMHDx5k1KhRTbYz47oK+Oq7zbFkyRK++uor3nzzTY+OM763yezp/+/OxJ5g1pyx6tq1KwcOHCAlJQWACRMmMGnSJH+FGFAiIiLYt28fnTp1AlxJ3GWXXcapU6eIiYlp9DgrXlvNGSurXlsnT57E4XAwY8YMMjIy+N3vfsegQYOoqakhMjKy0eOseF01Z6ysel1936JFixg4cCBJSUnnbNvS11VI3hF59913KS4uJjU1laSkJMrKysjJyeHtt99u9JiUlBQOHz5c//ro0aMA55zYE+yaM1YRERH1/0EDtG7dmvLy8pYI13Q2m63+ixVc5w5QUVHR6DFWvbaaM1ZWvbZOl0pv06YN4PpXqGEYHDt2rNFjrHpdNWesrHpdfd+iRYu45pprztnOjOsqJBOROXPmsH37djZv3szmzZuJj4/nlVdeYdy4cY0eM3jwYNauXVv/ev369WRkZJzxF2koas5YzZs3j+HDh9e/LioqIiMjowWiNd+CBQvo1q1b/euioiJiY2Np3759o8dY9dpqzlhZ9drq3r07ERER7NixA3DdBg8LC2tyubNVr6vmjJVVr6vTjh8/zvr16885PwRMuq78OhU2QHx/JUhZWZlRU1NzVpvS0lIjMTHRePHFF42CggKjf//+xrRp01o4UvO5M1Zbt241oqKijA8//NDYtm2b0adPH+PJJ59s4UjNcejQISMuLs54+eWXjfz8fGP48OHGhAkTDMPQtfVDzRkrK19bP/3pT41Ro0YZu3btMn72s58ZOTk5hmHoumqIp2Nl5evKMAzj7bffNlJTU894L5CuK8slIunp6cb777/fYLulS5ca3bt3N2JiYoxf/OIXxsmTJ1suyADh7li99tprRpcuXYz27dsb9957b4MXdKhauHCh0bNnTyMpKcm45ZZbjIqKCsMwdG01pDljZdVr6+DBg8bIkSONmJgYY/DgwUZhYaFhGLquGtKcsbLqdWUYhjF+/Hjj9ttvP+O9QLqubIbxvVkpIiIiIi0oJOeIiIiISHBQIiIiIiKmUSIiIiIiplEiIiIiIqZRIiIiIiKmUSIiIiIiplEiIiIiIqZRIiIiIiKmUSIiIiIiplEiIiIiIqb5/8LuaSrZIztjAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from math import exp\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "from sklearn.datasets import load_iris\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "\n",
    "# data\n",
    "def create_data():\n",
    "    iris = load_iris()\n",
    "    df = pd.DataFrame(iris.data, columns=iris.feature_names)\n",
    "    df['label'] = iris.target\n",
    "    df.columns = ['sepal length', 'sepal width', 'petal length', 'petal width', 'label']\n",
    "    data = np.array(df.iloc[:100, [0,1,-1]])\n",
    "    # print(data)\n",
    "    return data[:,:2], data[:,-1]\n",
    "\n",
    "\n",
    "X, y = create_data()\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)\n",
    "\n",
    "class LogisticReressionClassifier:\n",
    "    def __init__(self, max_iter=200, learning_rate=0.01):\n",
    "        self.max_iter = max_iter\n",
    "        self.learning_rate = learning_rate\n",
    "\n",
    "    def sigmoid(self, x):\n",
    "        return 1 / (1 + np.exp(-x))\n",
    "\n",
    "    def data_matrix(self, X):\n",
    "        data_mat = []\n",
    "        for d in X:\n",
    "            data_mat.append([1.0, *d])\n",
    "        return data_mat\n",
    "\n",
    "    def fit(self, X, y):\n",
    "        # label = np.mat(y)\n",
    "        data_mat = self.data_matrix(X)  # m*n\n",
    "        self.weights = np.zeros((len(data_mat[0]), 1), dtype=np.float32)\n",
    "\n",
    "        for iter_ in range(self.max_iter):\n",
    "            for i in range(len(X)):\n",
    "                result = self.sigmoid(np.dot(data_mat[i], self.weights))\n",
    "                error = y[i] - result\n",
    "                self.weights += self.learning_rate * error * np.transpose(\n",
    "                    [data_mat[i]])\n",
    "        print('LogisticRegression Model(learning_rate={},max_iter={})'.format(\n",
    "            self.learning_rate, self.max_iter))\n",
    "\n",
    "    # def f(self, x):\n",
    "    #     return -(self.weights[0] + self.weights[1] * x) / self.weights[2]\n",
    "\n",
    "    def score(self, X_test, y_test):\n",
    "        right = 0\n",
    "        X_test = self.data_matrix(X_test)\n",
    "        for x, y in zip(X_test, y_test):\n",
    "            result = np.dot(x, self.weights)\n",
    "            if (result > 0 and y == 1) or (result < 0 and y == 0):\n",
    "                right += 1\n",
    "        return right / len(X_test)\n",
    "    \n",
    "    \n",
    "lr_clf = LogisticReressionClassifier()\n",
    "lr_clf.fit(X_train, y_train)\n",
    "\n",
    "print(f'The score used logisticClassifier to predict is {lr_clf.score(X_test, y_test) * 100:.2f}%')\n",
    "\n",
    "x_ponits = np.arange(4, 8)\n",
    "y_ = -(lr_clf.weights[1]*x_ponits + lr_clf.weights[0])/lr_clf.weights[2]\n",
    "plt.plot(x_ponits, y_)\n",
    "\n",
    "#lr_clf.show_graph()\n",
    "plt.scatter(X[:50,0],X[:50,1], label='0')\n",
    "plt.scatter(X[50:,0],X[50:,1], label='1')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b3b4503c",
   "metadata": {},
   "source": [
    "# scikit-learn实例\n",
    "sklearn.linear_model.LogisticRegression\n",
    "\n",
    "solver参数决定了我们对逻辑回归损失函数的优化方法，有四种算法可以选择，分别是：\n",
    "- a) liblinear：使用了开源的liblinear库实现，内部使用了坐标轴下降法来迭代优化损失函数。\n",
    "- b) lbfgs：拟牛顿法的一种，利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。\n",
    "- c) newton-cg：也是牛顿法家族的一种，利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。\n",
    "- d) sag：即随机平均梯度下降，是梯度下降法的变种，和普通梯度下降法的区别是每次迭代仅仅用一部分的样本来计算梯度，适合于样本数据多的时候。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "47be2f5f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "特征系数：[[ 2.96961353 -2.29508904]]，偏差项：[-9.02377697]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x311b87550>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from sklearn.linear_model import LogisticRegression\n",
    "clf = LogisticRegression(max_iter=200)\n",
    "clf.fit(X_train, y_train)\n",
    "clf.score(X_test, y_test)\n",
    "# oef_和intercept_属性分别代表模型的特征系数和偏差项。\n",
    "print(f'特征系数：{clf.coef_}，偏差项：{clf.intercept_}')\n",
    "\n",
    "x_ponits = np.arange(4, 8)\n",
    "y_ = -(clf.coef_[0][0]*x_ponits + clf.intercept_)/clf.coef_[0][1]\n",
    "plt.plot(x_ponits, y_)\n",
    "\n",
    "plt.plot(X[:50, 0], X[:50, 1], 'o', color='blue', label='0')\n",
    "plt.plot(X[50:, 0], X[50:, 1], 'o', color='orange', label='1')\n",
    "plt.xlabel('sepal length')\n",
    "plt.ylabel('sepal width')\n",
    "plt.legend()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.5"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
